#ifndef CONTAINER_H
#define CONTAINER_H

extern "C"
{
#include <avcodec.h>
#include <avformat.h>
#include <swscale.h> 
}

#include "video.h"
#include "VideoEncoder.h"
#include <vector>

class container
{
	public:
		container();
		void AddVideo(video param);
		void EnableStreams(bool VideoEnabled, bool AudioEnabled);
		void SetEncoder(char *filename, int bitrate, int den, int num, int gopsize, int width, int height, int sample_rate, int audio_bitrate, int channels, CodecID videoCodec, CodecID audioCodec);
		void Process();
	private:
		VideoEncoder Encoder;
		std::vector<video> Videolist;
		AVPacket packet;
		AVFrame *frame;
		int16_t *samples;
};

#endif